﻿using System;
//
class navStocktinturas : navBase
{
    //
    public navStocktinturas(int idNavegador)
        : base(idNavegador)
    { InitializeComponent(); }//Eventos 
    //
    //public navStocktinturas() { InitializeComponent(); }//Eventos 
    //
    private void navLoad(object sender, EventArgs e)
    {
        NavegadorDevolverPanel(EPanelInfoExtra.Panel1).Appearance.ForeColor = System.Drawing.Color.Blue;
        NavegadorDevolverPanel(EPanelInfoExtra.Panel2).Appearance.ForeColor = System.Drawing.Color.Red;
        RecalcularTiposCannabis();
    }
    //
    internal void RecalcularTiposCannabis()
    {
        string _strPanelTipos = "";
        bool _bolStockMenosVeinte = false;
        string str_Sql =
             //No me sirve pq. los que tienen 0 no salen
            //" SELECT  vst.idtiposcannabi id,vst.tiposcannabis_codigo cod, vst.tiposcannabis_nombre nom, COUNT(*) cuenta " +
            //" FROM visstocktinturas vst " +
            //" GROUP BY vst.idtiposcannabi,vst.tiposcannabis_codigo,vst.tiposcannabis_nombre " 
            //Con esta select si salen
              " SELECT codigo cod, IF(vst.precio IS NULL,0,sum(vst.cantidad)) cuenta FROM tiposcannabis tc " +
              " LEFT JOIN visstocktinturas vst ON vst.idtiposcannabi = tc.idtiposcannabi GROUP BY codigo ";
        //System.Data.DataRow DrTiposCannabis;
        System.Data.DataTable DtTiposCannabis = clsBBDD.DtObtener(str_Sql, clsVariables.e_TipoOrigen.Cliente, false);
        //
        if (DtTiposCannabis.Rows.Count > 0)
        {
            foreach (System.Data.DataRow Dr in DtTiposCannabis.Rows)
            {
                _strPanelTipos += String.Format("{0}={1}, ", Dr["cod"], Dr["cuenta"]);
                if (Convert.ToInt64(Dr["cuenta"]) <= 20) { _bolStockMenosVeinte = true; }
            }
            _strPanelTipos = _strPanelTipos.Substring(0, _strPanelTipos.Length - 2);
            NavegadorSetInfoExtra("Totales: " + _strPanelTipos, EPanelInfoExtra.Panel1);

            if (_bolStockMenosVeinte == true)
            { NavegadorSetInfoExtra("Atención! Stock en por debajo de 20 unidades", EPanelInfoExtra.Panel2); }
            else { NavegadorSetInfoExtra("", EPanelInfoExtra.Panel2); }
        }
        else
        {
            NavegadorSetInfoExtra("Sin stock...", EPanelInfoExtra.Panel1);
            NavegadorSetInfoExtra("", EPanelInfoExtra.Panel2);
        }
    }

    private void InitializeComponent()
    {
        SuspendLayout();
        // navStocktinturas
        //this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
        //this.ClientSize = new System.Drawing.Size(810, 463);
        //this.Name = "navStocktinturas";
        //this.MiEvento += new navBase.MiEventoEventHandler(this.navStocktinturas_MiEvento);
        Load += navLoad;
        DespuesAplicarFiltro += new navBase.DespuesAplicarFiltroEventHandler(navStocktinturas_DespuesAplicarFiltro);
        ResumeLayout(false);
    }

    private void navStocktinturas_DespuesAplicarFiltro()
    { RecalcularTiposCannabis(); }
}
